package cn.virens.mybatis;

import java.io.Serializable;
import java.time.LocalDateTime;

import com.alibaba.fastjson.JSON;

import io.mybatis.provider.Entity;

public abstract class BaseModel implements Serializable {
	private static final long serialVersionUID = 1L;

	@Entity.Column(id = true)
	private Long id;

	/**
	 * 创建时间
	 */
	@Entity.Column("create_time")
	private LocalDateTime createTime;

	/**
	 * 编辑时间
	 */
	@Entity.Column("update_time")
	private LocalDateTime updateTime;

	/**
	 * @return id
	 */
	public Long getId() {
		return id;
	}

	/**
	 * @param id
	 */
	public void setId(Long id) {
		this.id = id;
	}

	/**
	 * 获取创建时间
	 *
	 * @return create_time - 创建时间
	 */
	public LocalDateTime getCreateTime() {
		return createTime;
	}

	/**
	 * 设置创建时间
	 *
	 * @param createTime 创建时间
	 */
	public void setCreateTime(LocalDateTime createTime) {
		this.createTime = createTime;
	}

	/**
	 * 获取编辑时间
	 *
	 * @return update_time - 编辑时间
	 */
	public LocalDateTime getUpdateTime() {
		return updateTime;
	}

	/**
	 * 设置编辑时间
	 *
	 * @param updateTime 编辑时间
	 */
	public void setUpdateTime(LocalDateTime updateTime) {
		this.updateTime = updateTime;
	}

	@Override
	public String toString() {
		return JSON.toJSONString(this);
	}
}